package 依赖倒置原则;

import 依赖倒置原则.classes.ASwitch;
import 依赖倒置原则.classes.Lamp;
import 依赖倒置原则.classes.Television;
import 依赖倒置原则.classes.error.Light;
import 依赖倒置原则.classes.error.Switch;

public class DependencyInversionPrinciple 
{
	public static void main(String[] args) 
	{
		//错误例子
		//switch过度依赖于light
		Switch aSwitch = new Switch();
		aSwitch.setLight(new Light());
		aSwitch.on();
		
		//正确例子
		//调整，使用接口
		ASwitch aSwitch1 = new ASwitch();
		aSwitch1.on(new Lamp());
		aSwitch1.on(new Television());
	}
}
